<?php
use Illuminate\Support\Facades\Route;

function register_route($prefix, $controller, $callable = null)
{
    Route::group(['prefix' => $prefix], function () use ($controller, $callable) {
        is_callable($callable) && $callable($controller);
    });
}

function cover_mobile($mobile)
{
    return substr_replace($mobile, '****',3, 4);
}

function listToTree($lists, $childKey = 'children'){
    $map = [];
    $res = [];
    foreach($lists as $id => &$item){
        // 获取出每一条数据的父id
        $pid = &$item['pid'];
        // 将每一个item的引用保存到$map中
        $map[$item['id']] = &$item;
        // 如果在map中没有设置过他的pid, 说明是根节点, pid为0,
        if(!isset($map[$pid])){
            // 将pid为0的item的引用保存到$res中
            $res[$id] = &$item;
        }else{
            // 如果在map中没有设置过他的pid, 则将该item加入到他父亲的叶子节点中
            $pItem = &$map[$pid];
            $pItem[$childKey][] = &$item;
        }
    }
    return $res;
}
